{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Estimating Current Cases by Category\n",
    "This notebook explores a methodology to estimate current mild, severe and critical patients. Both mild and critical categories appear to be correlated to independently reported categories from Italy's ministry of health.\n",
    "\n",
    "Most of the reporting of COVID-19 data, including what is reported by the ECDC, focuses on the daily counts of new cases and deaths. While this is useful for tracking the general development of the disease, it provides little information about the capacity required by a health care system to cope with the case load. Here we explore a methodology to estimate total active cases (cases between onset and recovery / death) broken down by category."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Breakdown of cases\n",
    "Early data from China classified the cases into *mild*, *severe* and *critical* with 80.9%, 13.8% and 4.7% of occurrences respectively ([source](https://www.cnn.com/2020/03/20/health/covid-19-recovery-rates-intl/index.html)). While this might be useful for categorising cases, it does not appear to match some outcome-based data like hospitalisation rate where, as of March 26, Italy reported 43.2%, Spain 56.80% and New York 15% of all confirmed cases.\n",
    "\n",
    "Such wild range in hospitalisation rates is potentially due to different criteria being used across health care systems as well as hitting potential system capacity limits. Therefore, the estimations performed here cannot be used as a proxy for hospitalisation rates unless a country-dependent correcting factor is applied. However, using an estimate of 5% of all cases appears to be a good predictor for ICU admission rates, and 15% of all cases seem to correlate to a rate of confirmed cases that only experience mild symptoms."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Since reported numbers are approximate, they are rounded for the sake of simplicity\n",
    "severe_ratio = .15\n",
    "critical_ratio = .05\n",
    "mild_ratio = 1 - severe_ratio - critical_ratio"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Discharge time for severe vs critical cases\n",
    "Unfortunately, early data from Chinese sources only reported a median stay of 12 and a mean stay of 12.8 for *all hospitalisations* without specifying which of them required ICU resources.\n",
    "\n",
    "Since we know the ratio of severe vs critical cases, we only need to guess the discharge time of severe cases since there will only be one way to satisfy the constraint of overall hospitalisation median and mean. Here, we plot the estimated discharge time for critical cases (y axis) given a discharge time for severe cases (x axis):"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "output_type": "display_data",
     "data": {
      "text/plain": "<Figure size 1152x576 with 1 Axes>",
      "image/svg+xml": "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n  \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n<!-- Created with matplotlib (https://matplotlib.org/) -->\n<svg height=\"484.101094pt\" version=\"1.1\" viewBox=\"0 0 938.107031 484.101094\" width=\"938.107031pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <defs>\n  <style type=\"text/css\">\n*{stroke-linecap:butt;stroke-linejoin:round;}\n  </style>\n </defs>\n <g id=\"figure_1\">\n  <g id=\"patch_1\">\n   <path d=\"M 0 484.101094 \nL 938.107031 484.101094 \nL 938.107031 0 \nL 0 0 \nz\n\" style=\"fill:#ffffff;\"/>\n  </g>\n  <g id=\"axes_1\">\n   <g id=\"patch_2\">\n    <path d=\"M 38.107031 442.08 \nL 930.907031 442.08 \nL 930.907031 7.2 \nL 38.107031 7.2 \nz\n\" style=\"fill:#eaeaf2;\"/>\n   </g>\n   <g id=\"matplotlib.axis_1\">\n    <g id=\"xtick_1\">\n     <g id=\"line2d_1\">\n      <path clip-path=\"url(#p0d7b42937e)\" d=\"M 78.688849 442.08 \nL 78.688849 7.2 \n\" style=\"fill:none;stroke:#ffffff;stroke-linecap:round;\"/>\n     </g>\n     <g id=\"text_1\">\n      <!-- 10 -->\n      <defs>\n       <path d=\"M 37.25 0 \nL 28.46875 0 \nL 28.46875 56 \nQ 25.296875 52.984375 20.140625 49.953125 \nQ 14.984375 46.921875 10.890625 45.40625 \nL 10.890625 53.90625 \nQ 18.265625 57.375 23.78125 62.296875 \nQ 29.296875 67.234375 31.59375 71.875 \nL 37.25 71.875 \nz\n\" id=\"ArialMT-49\"/>\n       <path d=\"M 4.15625 35.296875 \nQ 4.15625 48 6.765625 55.734375 \nQ 9.375 63.484375 14.515625 67.671875 \nQ 19.671875 71.875 27.484375 71.875 \nQ 33.25 71.875 37.59375 69.546875 \nQ 41.9375 67.234375 44.765625 62.859375 \nQ 47.609375 58.5 49.21875 52.21875 \nQ 50.828125 45.953125 50.828125 35.296875 \nQ 50.828125 22.703125 48.234375 14.96875 \nQ 45.65625 7.234375 40.5 3 \nQ 35.359375 -1.21875 27.484375 -1.21875 \nQ 17.140625 -1.21875 11.234375 6.203125 \nQ 4.15625 15.140625 4.15625 35.296875 \nz\nM 13.1875 35.296875 \nQ 13.1875 17.671875 17.3125 11.828125 \nQ 21.4375 6 27.484375 6 \nQ 33.546875 6 37.671875 11.859375 \nQ 41.796875 17.71875 41.796875 35.296875 \nQ 41.796875 52.984375 37.671875 58.78125 \nQ 33.546875 64.59375 27.390625 64.59375 \nQ 21.34375 64.59375 17.71875 59.46875 \nQ 13.1875 52.9375 13.1875 35.296875 \nz\n\" id=\"ArialMT-48\"/>\n      </defs>\n      <g style=\"fill:#262626;\" transform=\"translate(72.571818 459.453594)scale(0.11 -0.11)\">\n       <use xlink:href=\"#ArialMT-49\"/>\n       <use x=\"55.615234\" xlink:href=\"#ArialMT-48\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"xtick_2\">\n     <g id=\"line2d_2\">\n      <path clip-path=\"url(#p0d7b42937e)\" d=\"M 241.016122 442.08 \nL 241.016122 7.2 \n\" style=\"fill:none;stroke:#ffffff;stroke-linecap:round;\"/>\n     </g>\n     <g id=\"text_2\">\n      <!-- 11 -->\n      <g style=\"fill:#262626;\" transform=\"translate(234.905107 459.453594)scale(0.11 -0.11)\">\n       <use xlink:href=\"#ArialMT-49\"/>\n       <use x=\"55.505859\" xlink:href=\"#ArialMT-49\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"xtick_3\">\n     <g id=\"line2d_3\">\n      <path clip-path=\"url(#p0d7b42937e)\" d=\"M 403.343395 442.08 \nL 403.343395 7.2 \n\" style=\"fill:none;stroke:#ffffff;stroke-linecap:round;\"/>\n     </g>\n     <g id=\"text_3\">\n      <!-- 12 -->\n      <defs>\n       <path d=\"M 50.34375 8.453125 \nL 50.34375 0 \nL 3.03125 0 \nQ 2.9375 3.171875 4.046875 6.109375 \nQ 5.859375 10.9375 9.828125 15.625 \nQ 13.8125 20.3125 21.34375 26.46875 \nQ 33.015625 36.03125 37.109375 41.625 \nQ 41.21875 47.21875 41.21875 52.203125 \nQ 41.21875 57.421875 37.46875 61 \nQ 33.734375 64.59375 27.734375 64.59375 \nQ 21.390625 64.59375 17.578125 60.78125 \nQ 13.765625 56.984375 13.71875 50.25 \nL 4.6875 51.171875 \nQ 5.609375 61.28125 11.65625 66.578125 \nQ 17.71875 71.875 27.9375 71.875 \nQ 38.234375 71.875 44.234375 66.15625 \nQ 50.25 60.453125 50.25 52 \nQ 50.25 47.703125 48.484375 43.546875 \nQ 46.734375 39.40625 42.65625 34.8125 \nQ 38.578125 30.21875 29.109375 22.21875 \nQ 21.1875 15.578125 18.9375 13.203125 \nQ 16.703125 10.84375 15.234375 8.453125 \nz\n\" id=\"ArialMT-50\"/>\n      </defs>\n      <g style=\"fill:#262626;\" transform=\"translate(397.226364 459.453594)scale(0.11 -0.11)\">\n       <use xlink:href=\"#ArialMT-49\"/>\n       <use x=\"55.615234\" xlink:href=\"#ArialMT-50\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"xtick_4\">\n     <g id=\"line2d_4\">\n      <path clip-path=\"url(#p0d7b42937e)\" d=\"M 565.670668 442.08 \nL 565.670668 7.2 \n\" style=\"fill:none;stroke:#ffffff;stroke-linecap:round;\"/>\n     </g>\n     <g id=\"text_4\">\n      <!-- 13 -->\n      <defs>\n       <path d=\"M 4.203125 18.890625 \nL 12.984375 20.0625 \nQ 14.5 12.59375 18.140625 9.296875 \nQ 21.78125 6 27 6 \nQ 33.203125 6 37.46875 10.296875 \nQ 41.75 14.59375 41.75 20.953125 \nQ 41.75 27 37.796875 30.921875 \nQ 33.84375 34.859375 27.734375 34.859375 \nQ 25.25 34.859375 21.53125 33.890625 \nL 22.515625 41.609375 \nQ 23.390625 41.5 23.921875 41.5 \nQ 29.546875 41.5 34.03125 44.421875 \nQ 38.53125 47.359375 38.53125 53.46875 \nQ 38.53125 58.296875 35.25 61.46875 \nQ 31.984375 64.65625 26.8125 64.65625 \nQ 21.6875 64.65625 18.265625 61.421875 \nQ 14.84375 58.203125 13.875 51.765625 \nL 5.078125 53.328125 \nQ 6.6875 62.15625 12.390625 67.015625 \nQ 18.109375 71.875 26.609375 71.875 \nQ 32.46875 71.875 37.390625 69.359375 \nQ 42.328125 66.84375 44.9375 62.5 \nQ 47.5625 58.15625 47.5625 53.265625 \nQ 47.5625 48.640625 45.0625 44.828125 \nQ 42.578125 41.015625 37.703125 38.765625 \nQ 44.046875 37.3125 47.5625 32.6875 \nQ 51.078125 28.078125 51.078125 21.140625 \nQ 51.078125 11.765625 44.234375 5.25 \nQ 37.40625 -1.265625 26.953125 -1.265625 \nQ 17.53125 -1.265625 11.296875 4.34375 \nQ 5.078125 9.96875 4.203125 18.890625 \nz\n\" id=\"ArialMT-51\"/>\n      </defs>\n      <g style=\"fill:#262626;\" transform=\"translate(559.553636 459.453594)scale(0.11 -0.11)\">\n       <use xlink:href=\"#ArialMT-49\"/>\n       <use x=\"55.615234\" xlink:href=\"#ArialMT-51\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"xtick_5\">\n     <g id=\"line2d_5\">\n      <path clip-path=\"url(#p0d7b42937e)\" d=\"M 727.99794 442.08 \nL 727.99794 7.2 \n\" style=\"fill:none;stroke:#ffffff;stroke-linecap:round;\"/>\n     </g>\n     <g id=\"text_5\">\n      <!-- 14 -->\n      <defs>\n       <path d=\"M 32.328125 0 \nL 32.328125 17.140625 \nL 1.265625 17.140625 \nL 1.265625 25.203125 \nL 33.9375 71.578125 \nL 41.109375 71.578125 \nL 41.109375 25.203125 \nL 50.78125 25.203125 \nL 50.78125 17.140625 \nL 41.109375 17.140625 \nL 41.109375 0 \nz\nM 32.328125 25.203125 \nL 32.328125 57.46875 \nL 9.90625 25.203125 \nz\n\" id=\"ArialMT-52\"/>\n      </defs>\n      <g style=\"fill:#262626;\" transform=\"translate(721.880909 459.453594)scale(0.11 -0.11)\">\n       <use xlink:href=\"#ArialMT-49\"/>\n       <use x=\"55.615234\" xlink:href=\"#ArialMT-52\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"xtick_6\">\n     <g id=\"line2d_6\">\n      <path clip-path=\"url(#p0d7b42937e)\" d=\"M 890.325213 442.08 \nL 890.325213 7.2 \n\" style=\"fill:none;stroke:#ffffff;stroke-linecap:round;\"/>\n     </g>\n     <g id=\"text_6\">\n      <!-- 15 -->\n      <defs>\n       <path d=\"M 4.15625 18.75 \nL 13.375 19.53125 \nQ 14.40625 12.796875 18.140625 9.390625 \nQ 21.875 6 27.15625 6 \nQ 33.5 6 37.890625 10.78125 \nQ 42.28125 15.578125 42.28125 23.484375 \nQ 42.28125 31 38.0625 35.34375 \nQ 33.84375 39.703125 27 39.703125 \nQ 22.75 39.703125 19.328125 37.765625 \nQ 15.921875 35.84375 13.96875 32.765625 \nL 5.71875 33.84375 \nL 12.640625 70.609375 \nL 48.25 70.609375 \nL 48.25 62.203125 \nL 19.671875 62.203125 \nL 15.828125 42.96875 \nQ 22.265625 47.46875 29.34375 47.46875 \nQ 38.71875 47.46875 45.15625 40.96875 \nQ 51.609375 34.46875 51.609375 24.265625 \nQ 51.609375 14.546875 45.953125 7.46875 \nQ 39.0625 -1.21875 27.15625 -1.21875 \nQ 17.390625 -1.21875 11.203125 4.25 \nQ 5.03125 9.71875 4.15625 18.75 \nz\n\" id=\"ArialMT-53\"/>\n      </defs>\n      <g style=\"fill:#262626;\" transform=\"translate(884.208182 459.453594)scale(0.11 -0.11)\">\n       <use xlink:href=\"#ArialMT-49\"/>\n       <use x=\"55.615234\" xlink:href=\"#ArialMT-53\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"text_7\">\n     <!-- Hospitalisation time for severe cases (days) -->\n     <defs>\n      <path d=\"M 8.015625 0 \nL 8.015625 71.578125 \nL 17.484375 71.578125 \nL 17.484375 42.1875 \nL 54.6875 42.1875 \nL 54.6875 71.578125 \nL 64.15625 71.578125 \nL 64.15625 0 \nL 54.6875 0 \nL 54.6875 33.734375 \nL 17.484375 33.734375 \nL 17.484375 0 \nz\n\" id=\"ArialMT-72\"/>\n      <path d=\"M 3.328125 25.921875 \nQ 3.328125 40.328125 11.328125 47.265625 \nQ 18.015625 53.03125 27.640625 53.03125 \nQ 38.328125 53.03125 45.109375 46.015625 \nQ 51.90625 39.015625 51.90625 26.65625 \nQ 51.90625 16.65625 48.90625 10.90625 \nQ 45.90625 5.171875 40.15625 2 \nQ 34.421875 -1.171875 27.640625 -1.171875 \nQ 16.75 -1.171875 10.03125 5.8125 \nQ 3.328125 12.796875 3.328125 25.921875 \nz\nM 12.359375 25.921875 \nQ 12.359375 15.96875 16.703125 11.015625 \nQ 21.046875 6.0625 27.640625 6.0625 \nQ 34.1875 6.0625 38.53125 11.03125 \nQ 42.875 16.015625 42.875 26.21875 \nQ 42.875 35.84375 38.5 40.796875 \nQ 34.125 45.75 27.640625 45.75 \nQ 21.046875 45.75 16.703125 40.8125 \nQ 12.359375 35.890625 12.359375 25.921875 \nz\n\" id=\"ArialMT-111\"/>\n      <path d=\"M 3.078125 15.484375 \nL 11.765625 16.84375 \nQ 12.5 11.625 15.84375 8.84375 \nQ 19.1875 6.0625 25.203125 6.0625 \nQ 31.25 6.0625 34.171875 8.515625 \nQ 37.109375 10.984375 37.109375 14.3125 \nQ 37.109375 17.28125 34.515625 19 \nQ 32.71875 20.171875 25.53125 21.96875 \nQ 15.875 24.421875 12.140625 26.203125 \nQ 8.40625 27.984375 6.46875 31.125 \nQ 4.546875 34.28125 4.546875 38.09375 \nQ 4.546875 41.546875 6.125 44.5 \nQ 7.71875 47.46875 10.453125 49.421875 \nQ 12.5 50.921875 16.03125 51.96875 \nQ 19.578125 53.03125 23.640625 53.03125 \nQ 29.734375 53.03125 34.34375 51.265625 \nQ 38.96875 49.515625 41.15625 46.5 \nQ 43.359375 43.5 44.1875 38.484375 \nL 35.59375 37.3125 \nQ 35.015625 41.3125 32.203125 43.546875 \nQ 29.390625 45.796875 24.265625 45.796875 \nQ 18.21875 45.796875 15.625 43.796875 \nQ 13.03125 41.796875 13.03125 39.109375 \nQ 13.03125 37.40625 14.109375 36.03125 \nQ 15.1875 34.625 17.484375 33.6875 \nQ 18.796875 33.203125 25.25 31.453125 \nQ 34.578125 28.953125 38.25 27.359375 \nQ 41.9375 25.78125 44.03125 22.75 \nQ 46.140625 19.734375 46.140625 15.234375 \nQ 46.140625 10.84375 43.578125 6.953125 \nQ 41.015625 3.078125 36.171875 0.953125 \nQ 31.34375 -1.171875 25.25 -1.171875 \nQ 15.140625 -1.171875 9.84375 3.03125 \nQ 4.546875 7.234375 3.078125 15.484375 \nz\n\" id=\"ArialMT-115\"/>\n      <path d=\"M 6.59375 -19.875 \nL 6.59375 51.859375 \nL 14.59375 51.859375 \nL 14.59375 45.125 \nQ 17.4375 49.078125 21 51.046875 \nQ 24.5625 53.03125 29.640625 53.03125 \nQ 36.28125 53.03125 41.359375 49.609375 \nQ 46.4375 46.1875 49.015625 39.953125 \nQ 51.609375 33.734375 51.609375 26.3125 \nQ 51.609375 18.359375 48.75 11.984375 \nQ 45.90625 5.609375 40.453125 2.21875 \nQ 35.015625 -1.171875 29 -1.171875 \nQ 24.609375 -1.171875 21.109375 0.6875 \nQ 17.625 2.546875 15.375 5.375 \nL 15.375 -19.875 \nz\nM 14.546875 25.640625 \nQ 14.546875 15.625 18.59375 10.84375 \nQ 22.65625 6.0625 28.421875 6.0625 \nQ 34.28125 6.0625 38.453125 11.015625 \nQ 42.625 15.96875 42.625 26.375 \nQ 42.625 36.28125 38.546875 41.203125 \nQ 34.46875 46.140625 28.8125 46.140625 \nQ 23.1875 46.140625 18.859375 40.890625 \nQ 14.546875 35.640625 14.546875 25.640625 \nz\n\" id=\"ArialMT-112\"/>\n      <path d=\"M 6.640625 61.46875 \nL 6.640625 71.578125 \nL 15.4375 71.578125 \nL 15.4375 61.46875 \nz\nM 6.640625 0 \nL 6.640625 51.859375 \nL 15.4375 51.859375 \nL 15.4375 0 \nz\n\" id=\"ArialMT-105\"/>\n      <path d=\"M 25.78125 7.859375 \nL 27.046875 0.09375 \nQ 23.34375 -0.6875 20.40625 -0.6875 \nQ 15.625 -0.6875 12.984375 0.828125 \nQ 10.359375 2.34375 9.28125 4.8125 \nQ 8.203125 7.28125 8.203125 15.1875 \nL 8.203125 45.015625 \nL 1.765625 45.015625 \nL 1.765625 51.859375 \nL 8.203125 51.859375 \nL 8.203125 64.703125 \nL 16.9375 69.96875 \nL 16.9375 51.859375 \nL 25.78125 51.859375 \nL 25.78125 45.015625 \nL 16.9375 45.015625 \nL 16.9375 14.703125 \nQ 16.9375 10.9375 17.40625 9.859375 \nQ 17.875 8.796875 18.921875 8.15625 \nQ 19.96875 7.515625 21.921875 7.515625 \nQ 23.390625 7.515625 25.78125 7.859375 \nz\n\" id=\"ArialMT-116\"/>\n      <path d=\"M 40.4375 6.390625 \nQ 35.546875 2.25 31.03125 0.53125 \nQ 26.515625 -1.171875 21.34375 -1.171875 \nQ 12.796875 -1.171875 8.203125 3 \nQ 3.609375 7.171875 3.609375 13.671875 \nQ 3.609375 17.484375 5.34375 20.625 \nQ 7.078125 23.78125 9.890625 25.6875 \nQ 12.703125 27.59375 16.21875 28.5625 \nQ 18.796875 29.25 24.03125 29.890625 \nQ 34.671875 31.15625 39.703125 32.90625 \nQ 39.75 34.71875 39.75 35.203125 \nQ 39.75 40.578125 37.25 42.78125 \nQ 33.890625 45.75 27.25 45.75 \nQ 21.046875 45.75 18.09375 43.578125 \nQ 15.140625 41.40625 13.71875 35.890625 \nL 5.125 37.0625 \nQ 6.296875 42.578125 8.984375 45.96875 \nQ 11.671875 49.359375 16.75 51.1875 \nQ 21.828125 53.03125 28.515625 53.03125 \nQ 35.15625 53.03125 39.296875 51.46875 \nQ 43.453125 49.90625 45.40625 47.53125 \nQ 47.359375 45.171875 48.140625 41.546875 \nQ 48.578125 39.3125 48.578125 33.453125 \nL 48.578125 21.734375 \nQ 48.578125 9.46875 49.140625 6.21875 \nQ 49.703125 2.984375 51.375 0 \nL 42.1875 0 \nQ 40.828125 2.734375 40.4375 6.390625 \nz\nM 39.703125 26.03125 \nQ 34.90625 24.078125 25.34375 22.703125 \nQ 19.921875 21.921875 17.671875 20.9375 \nQ 15.4375 19.96875 14.203125 18.09375 \nQ 12.984375 16.21875 12.984375 13.921875 \nQ 12.984375 10.40625 15.640625 8.0625 \nQ 18.3125 5.71875 23.4375 5.71875 \nQ 28.515625 5.71875 32.46875 7.9375 \nQ 36.421875 10.15625 38.28125 14.015625 \nQ 39.703125 17 39.703125 22.796875 \nz\n\" id=\"ArialMT-97\"/>\n      <path d=\"M 6.390625 0 \nL 6.390625 71.578125 \nL 15.1875 71.578125 \nL 15.1875 0 \nz\n\" id=\"ArialMT-108\"/>\n      <path d=\"M 6.59375 0 \nL 6.59375 51.859375 \nL 14.5 51.859375 \nL 14.5 44.484375 \nQ 20.21875 53.03125 31 53.03125 \nQ 35.6875 53.03125 39.625 51.34375 \nQ 43.5625 49.65625 45.515625 46.921875 \nQ 47.46875 44.1875 48.25 40.4375 \nQ 48.734375 37.984375 48.734375 31.890625 \nL 48.734375 0 \nL 39.9375 0 \nL 39.9375 31.546875 \nQ 39.9375 36.921875 38.90625 39.578125 \nQ 37.890625 42.234375 35.28125 43.8125 \nQ 32.671875 45.40625 29.15625 45.40625 \nQ 23.53125 45.40625 19.453125 41.84375 \nQ 15.375 38.28125 15.375 28.328125 \nL 15.375 0 \nz\n\" id=\"ArialMT-110\"/>\n      <path id=\"ArialMT-32\"/>\n      <path d=\"M 6.59375 0 \nL 6.59375 51.859375 \nL 14.453125 51.859375 \nL 14.453125 44.578125 \nQ 16.890625 48.390625 20.9375 50.703125 \nQ 25 53.03125 30.171875 53.03125 \nQ 35.9375 53.03125 39.625 50.640625 \nQ 43.3125 48.25 44.828125 43.953125 \nQ 50.984375 53.03125 60.84375 53.03125 \nQ 68.5625 53.03125 72.703125 48.75 \nQ 76.859375 44.484375 76.859375 35.59375 \nL 76.859375 0 \nL 68.109375 0 \nL 68.109375 32.671875 \nQ 68.109375 37.9375 67.25 40.25 \nQ 66.40625 42.578125 64.15625 43.984375 \nQ 61.921875 45.40625 58.890625 45.40625 \nQ 53.421875 45.40625 49.796875 41.765625 \nQ 46.1875 38.140625 46.1875 30.125 \nL 46.1875 0 \nL 37.40625 0 \nL 37.40625 33.6875 \nQ 37.40625 39.546875 35.25 42.46875 \nQ 33.109375 45.40625 28.21875 45.40625 \nQ 24.515625 45.40625 21.359375 43.453125 \nQ 18.21875 41.5 16.796875 37.734375 \nQ 15.375 33.984375 15.375 26.90625 \nL 15.375 0 \nz\n\" id=\"ArialMT-109\"/>\n      <path d=\"M 42.09375 16.703125 \nL 51.171875 15.578125 \nQ 49.03125 7.625 43.21875 3.21875 \nQ 37.40625 -1.171875 28.375 -1.171875 \nQ 17 -1.171875 10.328125 5.828125 \nQ 3.65625 12.84375 3.65625 25.484375 \nQ 3.65625 38.578125 10.390625 45.796875 \nQ 17.140625 53.03125 27.875 53.03125 \nQ 38.28125 53.03125 44.875 45.953125 \nQ 51.46875 38.875 51.46875 26.03125 \nQ 51.46875 25.25 51.421875 23.6875 \nL 12.75 23.6875 \nQ 13.234375 15.140625 17.578125 10.59375 \nQ 21.921875 6.0625 28.421875 6.0625 \nQ 33.25 6.0625 36.671875 8.59375 \nQ 40.09375 11.140625 42.09375 16.703125 \nz\nM 13.234375 30.90625 \nL 42.1875 30.90625 \nQ 41.609375 37.453125 38.875 40.71875 \nQ 34.671875 45.796875 27.984375 45.796875 \nQ 21.921875 45.796875 17.796875 41.75 \nQ 13.671875 37.703125 13.234375 30.90625 \nz\n\" id=\"ArialMT-101\"/>\n      <path d=\"M 8.6875 0 \nL 8.6875 45.015625 \nL 0.921875 45.015625 \nL 0.921875 51.859375 \nL 8.6875 51.859375 \nL 8.6875 57.375 \nQ 8.6875 62.59375 9.625 65.140625 \nQ 10.890625 68.5625 14.078125 70.671875 \nQ 17.28125 72.796875 23.046875 72.796875 \nQ 26.765625 72.796875 31.25 71.921875 \nL 29.9375 64.265625 \nQ 27.203125 64.75 24.75 64.75 \nQ 20.75 64.75 19.09375 63.03125 \nQ 17.4375 61.328125 17.4375 56.640625 \nL 17.4375 51.859375 \nL 27.546875 51.859375 \nL 27.546875 45.015625 \nL 17.4375 45.015625 \nL 17.4375 0 \nz\n\" id=\"ArialMT-102\"/>\n      <path d=\"M 6.5 0 \nL 6.5 51.859375 \nL 14.40625 51.859375 \nL 14.40625 44 \nQ 17.4375 49.515625 20 51.265625 \nQ 22.5625 53.03125 25.640625 53.03125 \nQ 30.078125 53.03125 34.671875 50.203125 \nL 31.640625 42.046875 \nQ 28.421875 43.953125 25.203125 43.953125 \nQ 22.3125 43.953125 20.015625 42.21875 \nQ 17.71875 40.484375 16.75 37.40625 \nQ 15.28125 32.71875 15.28125 27.15625 \nL 15.28125 0 \nz\n\" id=\"ArialMT-114\"/>\n      <path d=\"M 21 0 \nL 1.265625 51.859375 \nL 10.546875 51.859375 \nL 21.6875 20.796875 \nQ 23.484375 15.765625 25 10.359375 \nQ 26.171875 14.453125 28.265625 20.21875 \nL 39.796875 51.859375 \nL 48.828125 51.859375 \nL 29.203125 0 \nz\n\" id=\"ArialMT-118\"/>\n      <path d=\"M 40.4375 19 \nL 49.078125 17.875 \nQ 47.65625 8.9375 41.8125 3.875 \nQ 35.984375 -1.171875 27.484375 -1.171875 \nQ 16.84375 -1.171875 10.375 5.78125 \nQ 3.90625 12.75 3.90625 25.734375 \nQ 3.90625 34.125 6.6875 40.421875 \nQ 9.46875 46.734375 15.15625 49.875 \nQ 20.84375 53.03125 27.546875 53.03125 \nQ 35.984375 53.03125 41.359375 48.75 \nQ 46.734375 44.484375 48.25 36.625 \nL 39.703125 35.296875 \nQ 38.484375 40.53125 35.375 43.15625 \nQ 32.28125 45.796875 27.875 45.796875 \nQ 21.234375 45.796875 17.078125 41.03125 \nQ 12.9375 36.28125 12.9375 25.984375 \nQ 12.9375 15.53125 16.9375 10.796875 \nQ 20.953125 6.0625 27.390625 6.0625 \nQ 32.5625 6.0625 36.03125 9.234375 \nQ 39.5 12.40625 40.4375 19 \nz\n\" id=\"ArialMT-99\"/>\n      <path d=\"M 23.390625 -21.046875 \nQ 16.109375 -11.859375 11.078125 0.4375 \nQ 6.0625 12.75 6.0625 25.921875 \nQ 6.0625 37.546875 9.8125 48.1875 \nQ 14.203125 60.546875 23.390625 72.796875 \nL 29.6875 72.796875 \nQ 23.78125 62.640625 21.875 58.296875 \nQ 18.890625 51.5625 17.1875 44.234375 \nQ 15.09375 35.109375 15.09375 25.875 \nQ 15.09375 2.390625 29.6875 -21.046875 \nz\n\" id=\"ArialMT-40\"/>\n      <path d=\"M 40.234375 0 \nL 40.234375 6.546875 \nQ 35.296875 -1.171875 25.734375 -1.171875 \nQ 19.53125 -1.171875 14.328125 2.25 \nQ 9.125 5.671875 6.265625 11.796875 \nQ 3.421875 17.921875 3.421875 25.875 \nQ 3.421875 33.640625 6 39.96875 \nQ 8.59375 46.296875 13.765625 49.65625 \nQ 18.953125 53.03125 25.34375 53.03125 \nQ 30.03125 53.03125 33.6875 51.046875 \nQ 37.359375 49.078125 39.65625 45.90625 \nL 39.65625 71.578125 \nL 48.390625 71.578125 \nL 48.390625 0 \nz\nM 12.453125 25.875 \nQ 12.453125 15.921875 16.640625 10.984375 \nQ 20.84375 6.0625 26.5625 6.0625 \nQ 32.328125 6.0625 36.34375 10.765625 \nQ 40.375 15.484375 40.375 25.140625 \nQ 40.375 35.796875 36.265625 40.765625 \nQ 32.171875 45.75 26.171875 45.75 \nQ 20.3125 45.75 16.375 40.96875 \nQ 12.453125 36.1875 12.453125 25.875 \nz\n\" id=\"ArialMT-100\"/>\n      <path d=\"M 6.203125 -19.96875 \nL 5.21875 -11.71875 \nQ 8.109375 -12.5 10.25 -12.5 \nQ 13.1875 -12.5 14.9375 -11.515625 \nQ 16.703125 -10.546875 17.828125 -8.796875 \nQ 18.65625 -7.46875 20.515625 -2.25 \nQ 20.75 -1.515625 21.296875 -0.09375 \nL 1.609375 51.859375 \nL 11.078125 51.859375 \nL 21.875 21.828125 \nQ 23.96875 16.109375 25.640625 9.8125 \nQ 27.15625 15.875 29.25 21.625 \nL 40.328125 51.859375 \nL 49.125 51.859375 \nL 29.390625 -0.875 \nQ 26.21875 -9.421875 24.46875 -12.640625 \nQ 22.125 -17 19.09375 -19.015625 \nQ 16.0625 -21.046875 11.859375 -21.046875 \nQ 9.328125 -21.046875 6.203125 -19.96875 \nz\n\" id=\"ArialMT-121\"/>\n      <path d=\"M 12.359375 -21.046875 \nL 6.0625 -21.046875 \nQ 20.65625 2.390625 20.65625 25.875 \nQ 20.65625 35.0625 18.5625 44.09375 \nQ 16.890625 51.421875 13.921875 58.15625 \nQ 12.015625 62.546875 6.0625 72.796875 \nL 12.359375 72.796875 \nQ 21.53125 60.546875 25.921875 48.1875 \nQ 29.6875 37.546875 29.6875 25.921875 \nQ 29.6875 12.75 24.625 0.4375 \nQ 19.578125 -11.859375 12.359375 -21.046875 \nz\n\" id=\"ArialMT-41\"/>\n     </defs>\n     <g style=\"fill:#262626;\" transform=\"translate(368.468906 474.375469)scale(0.12 -0.12)\">\n      <use xlink:href=\"#ArialMT-72\"/>\n      <use x=\"72.216797\" xlink:href=\"#ArialMT-111\"/>\n      <use x=\"127.832031\" xlink:href=\"#ArialMT-115\"/>\n      <use x=\"177.832031\" xlink:href=\"#ArialMT-112\"/>\n      <use x=\"233.447266\" xlink:href=\"#ArialMT-105\"/>\n      <use x=\"255.664062\" xlink:href=\"#ArialMT-116\"/>\n      <use x=\"283.447266\" xlink:href=\"#ArialMT-97\"/>\n      <use x=\"339.0625\" xlink:href=\"#ArialMT-108\"/>\n      <use x=\"361.279297\" xlink:href=\"#ArialMT-105\"/>\n      <use x=\"383.496094\" xlink:href=\"#ArialMT-115\"/>\n      <use x=\"433.496094\" xlink:href=\"#ArialMT-97\"/>\n      <use x=\"489.111328\" xlink:href=\"#ArialMT-116\"/>\n      <use x=\"516.894531\" xlink:href=\"#ArialMT-105\"/>\n      <use x=\"539.111328\" xlink:href=\"#ArialMT-111\"/>\n      <use x=\"594.726562\" xlink:href=\"#ArialMT-110\"/>\n      <use x=\"650.341797\" xlink:href=\"#ArialMT-32\"/>\n      <use x=\"678.125\" xlink:href=\"#ArialMT-116\"/>\n      <use x=\"705.908203\" xlink:href=\"#ArialMT-105\"/>\n      <use x=\"728.125\" xlink:href=\"#ArialMT-109\"/>\n      <use x=\"811.425781\" xlink:href=\"#ArialMT-101\"/>\n      <use x=\"867.041016\" xlink:href=\"#ArialMT-32\"/>\n      <use x=\"894.824219\" xlink:href=\"#ArialMT-102\"/>\n      <use x=\"922.607422\" xlink:href=\"#ArialMT-111\"/>\n      <use x=\"978.222656\" xlink:href=\"#ArialMT-114\"/>\n      <use x=\"1011.523438\" xlink:href=\"#ArialMT-32\"/>\n      <use x=\"1039.306641\" xlink:href=\"#ArialMT-115\"/>\n      <use x=\"1089.306641\" xlink:href=\"#ArialMT-101\"/>\n      <use x=\"1144.921875\" xlink:href=\"#ArialMT-118\"/>\n      <use x=\"1194.921875\" xlink:href=\"#ArialMT-101\"/>\n      <use x=\"1250.537109\" xlink:href=\"#ArialMT-114\"/>\n      <use x=\"1283.837891\" xlink:href=\"#ArialMT-101\"/>\n      <use x=\"1339.453125\" xlink:href=\"#ArialMT-32\"/>\n      <use x=\"1367.236328\" xlink:href=\"#ArialMT-99\"/>\n      <use x=\"1417.236328\" xlink:href=\"#ArialMT-97\"/>\n      <use x=\"1472.851562\" xlink:href=\"#ArialMT-115\"/>\n      <use x=\"1522.851562\" xlink:href=\"#ArialMT-101\"/>\n      <use x=\"1578.466797\" xlink:href=\"#ArialMT-115\"/>\n      <use x=\"1628.466797\" xlink:href=\"#ArialMT-32\"/>\n      <use x=\"1656.25\" xlink:href=\"#ArialMT-40\"/>\n      <use x=\"1689.550781\" xlink:href=\"#ArialMT-100\"/>\n      <use x=\"1745.166016\" xlink:href=\"#ArialMT-97\"/>\n      <use x=\"1800.78125\" xlink:href=\"#ArialMT-121\"/>\n      <use x=\"1850.78125\" xlink:href=\"#ArialMT-115\"/>\n      <use x=\"1900.78125\" xlink:href=\"#ArialMT-41\"/>\n     </g>\n    </g>\n   </g>\n   <g id=\"matplotlib.axis_2\">\n    <g id=\"ytick_1\">\n     <g id=\"line2d_7\">\n      <path clip-path=\"url(#p0d7b42937e)\" d=\"M 38.107031 442.08 \nL 930.907031 442.08 \n\" style=\"fill:none;stroke:#ffffff;stroke-linecap:round;\"/>\n     </g>\n     <g id=\"text_8\">\n      <!-- 0.0 -->\n      <defs>\n       <path d=\"M 9.078125 0 \nL 9.078125 10.015625 \nL 19.09375 10.015625 \nL 19.09375 0 \nz\n\" id=\"ArialMT-46\"/>\n      </defs>\n      <g style=\"fill:#262626;\" transform=\"translate(13.317031 446.016797)scale(0.11 -0.11)\">\n       <use xlink:href=\"#ArialMT-48\"/>\n       <use x=\"55.615234\" xlink:href=\"#ArialMT-46\"/>\n       <use x=\"83.398438\" xlink:href=\"#ArialMT-48\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"ytick_2\">\n     <g id=\"line2d_8\">\n      <path clip-path=\"url(#p0d7b42937e)\" d=\"M 38.107031 390.796981 \nL 930.907031 390.796981 \n\" style=\"fill:none;stroke:#ffffff;stroke-linecap:round;\"/>\n     </g>\n     <g id=\"text_9\">\n      <!-- 2.5 -->\n      <g style=\"fill:#262626;\" transform=\"translate(13.317031 394.733778)scale(0.11 -0.11)\">\n       <use xlink:href=\"#ArialMT-50\"/>\n       <use x=\"55.615234\" xlink:href=\"#ArialMT-46\"/>\n       <use x=\"83.398438\" xlink:href=\"#ArialMT-53\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"ytick_3\">\n     <g id=\"line2d_9\">\n      <path clip-path=\"url(#p0d7b42937e)\" d=\"M 38.107031 339.513962 \nL 930.907031 339.513962 \n\" style=\"fill:none;stroke:#ffffff;stroke-linecap:round;\"/>\n     </g>\n     <g id=\"text_10\">\n      <!-- 5.0 -->\n      <g style=\"fill:#262626;\" transform=\"translate(13.317031 343.450759)scale(0.11 -0.11)\">\n       <use xlink:href=\"#ArialMT-53\"/>\n       <use x=\"55.615234\" xlink:href=\"#ArialMT-46\"/>\n       <use x=\"83.398438\" xlink:href=\"#ArialMT-48\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"ytick_4\">\n     <g id=\"line2d_10\">\n      <path clip-path=\"url(#p0d7b42937e)\" d=\"M 38.107031 288.230943 \nL 930.907031 288.230943 \n\" style=\"fill:none;stroke:#ffffff;stroke-linecap:round;\"/>\n     </g>\n     <g id=\"text_11\">\n      <!-- 7.5 -->\n      <defs>\n       <path d=\"M 4.734375 62.203125 \nL 4.734375 70.65625 \nL 51.078125 70.65625 \nL 51.078125 63.8125 \nQ 44.234375 56.546875 37.515625 44.484375 \nQ 30.8125 32.421875 27.15625 19.671875 \nQ 24.515625 10.6875 23.78125 0 \nL 14.75 0 \nQ 14.890625 8.453125 18.0625 20.40625 \nQ 21.234375 32.375 27.171875 43.484375 \nQ 33.109375 54.59375 39.796875 62.203125 \nz\n\" id=\"ArialMT-55\"/>\n      </defs>\n      <g style=\"fill:#262626;\" transform=\"translate(13.317031 292.16774)scale(0.11 -0.11)\">\n       <use xlink:href=\"#ArialMT-55\"/>\n       <use x=\"55.615234\" xlink:href=\"#ArialMT-46\"/>\n       <use x=\"83.398438\" xlink:href=\"#ArialMT-53\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"ytick_5\">\n     <g id=\"line2d_11\">\n      <path clip-path=\"url(#p0d7b42937e)\" d=\"M 38.107031 236.947925 \nL 930.907031 236.947925 \n\" style=\"fill:none;stroke:#ffffff;stroke-linecap:round;\"/>\n     </g>\n     <g id=\"text_12\">\n      <!-- 10.0 -->\n      <g style=\"fill:#262626;\" transform=\"translate(7.2 240.884721)scale(0.11 -0.11)\">\n       <use xlink:href=\"#ArialMT-49\"/>\n       <use x=\"55.615234\" xlink:href=\"#ArialMT-48\"/>\n       <use x=\"111.230469\" xlink:href=\"#ArialMT-46\"/>\n       <use x=\"139.013672\" xlink:href=\"#ArialMT-48\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"ytick_6\">\n     <g id=\"line2d_12\">\n      <path clip-path=\"url(#p0d7b42937e)\" d=\"M 38.107031 185.664906 \nL 930.907031 185.664906 \n\" style=\"fill:none;stroke:#ffffff;stroke-linecap:round;\"/>\n     </g>\n     <g id=\"text_13\">\n      <!-- 12.5 -->\n      <g style=\"fill:#262626;\" transform=\"translate(7.2 189.601703)scale(0.11 -0.11)\">\n       <use xlink:href=\"#ArialMT-49\"/>\n       <use x=\"55.615234\" xlink:href=\"#ArialMT-50\"/>\n       <use x=\"111.230469\" xlink:href=\"#ArialMT-46\"/>\n       <use x=\"139.013672\" xlink:href=\"#ArialMT-53\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"ytick_7\">\n     <g id=\"line2d_13\">\n      <path clip-path=\"url(#p0d7b42937e)\" d=\"M 38.107031 134.381887 \nL 930.907031 134.381887 \n\" style=\"fill:none;stroke:#ffffff;stroke-linecap:round;\"/>\n     </g>\n     <g id=\"text_14\">\n      <!-- 15.0 -->\n      <g style=\"fill:#262626;\" transform=\"translate(7.2 138.318684)scale(0.11 -0.11)\">\n       <use xlink:href=\"#ArialMT-49\"/>\n       <use x=\"55.615234\" xlink:href=\"#ArialMT-53\"/>\n       <use x=\"111.230469\" xlink:href=\"#ArialMT-46\"/>\n       <use x=\"139.013672\" xlink:href=\"#ArialMT-48\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"ytick_8\">\n     <g id=\"line2d_14\">\n      <path clip-path=\"url(#p0d7b42937e)\" d=\"M 38.107031 83.098868 \nL 930.907031 83.098868 \n\" style=\"fill:none;stroke:#ffffff;stroke-linecap:round;\"/>\n     </g>\n     <g id=\"text_15\">\n      <!-- 17.5 -->\n      <g style=\"fill:#262626;\" transform=\"translate(7.2 87.035665)scale(0.11 -0.11)\">\n       <use xlink:href=\"#ArialMT-49\"/>\n       <use x=\"55.615234\" xlink:href=\"#ArialMT-55\"/>\n       <use x=\"111.230469\" xlink:href=\"#ArialMT-46\"/>\n       <use x=\"139.013672\" xlink:href=\"#ArialMT-53\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"ytick_9\">\n     <g id=\"line2d_15\">\n      <path clip-path=\"url(#p0d7b42937e)\" d=\"M 38.107031 31.815849 \nL 930.907031 31.815849 \n\" style=\"fill:none;stroke:#ffffff;stroke-linecap:round;\"/>\n     </g>\n     <g id=\"text_16\">\n      <!-- 20.0 -->\n      <g style=\"fill:#262626;\" transform=\"translate(7.2 35.752646)scale(0.11 -0.11)\">\n       <use xlink:href=\"#ArialMT-50\"/>\n       <use x=\"55.615234\" xlink:href=\"#ArialMT-48\"/>\n       <use x=\"111.230469\" xlink:href=\"#ArialMT-46\"/>\n       <use x=\"139.013672\" xlink:href=\"#ArialMT-48\"/>\n      </g>\n     </g>\n    </g>\n   </g>\n   <g id=\"line2d_16\">\n    <path clip-path=\"url(#p0d7b42937e)\" d=\"M 78.688849 7.2 \nL 86.887197 10.308062 \nL 95.085544 13.416123 \nL 103.283891 16.524185 \nL 111.482238 19.632247 \nL 119.680585 22.740309 \nL 127.878932 25.84837 \nL 136.077279 28.956432 \nL 144.275626 32.064494 \nL 152.473973 35.172556 \nL 160.672321 38.280617 \nL 168.870668 41.388679 \nL 177.069015 44.496741 \nL 185.267362 47.604803 \nL 193.465709 50.712864 \nL 201.664056 53.820926 \nL 209.862403 56.928988 \nL 218.06075 60.03705 \nL 226.259097 63.145111 \nL 234.457444 66.253173 \nL 242.655792 69.361235 \nL 250.854139 72.469297 \nL 259.052486 75.577358 \nL 267.250833 78.68542 \nL 275.44918 81.793482 \nL 283.647527 84.901544 \nL 291.845874 88.009605 \nL 300.044221 91.117667 \nL 308.242568 94.225729 \nL 316.440916 97.333791 \nL 324.639263 100.441852 \nL 332.83761 103.549914 \nL 341.035957 106.657976 \nL 349.234304 109.766038 \nL 357.432651 112.874099 \nL 365.630998 115.982161 \nL 373.829345 119.090223 \nL 382.027692 122.198285 \nL 390.22604 125.306346 \nL 398.424387 128.414408 \nL 406.622734 131.52247 \nL 414.821081 134.630532 \nL 423.019428 137.738593 \nL 431.217775 140.846655 \nL 439.416122 143.954717 \nL 447.614469 147.062779 \nL 455.812816 150.17084 \nL 464.011163 153.278902 \nL 472.209511 156.386964 \nL 480.407858 159.495026 \nL 488.606205 162.603087 \nL 496.804552 165.711149 \nL 505.002899 168.819211 \nL 513.201246 171.927273 \nL 521.399593 175.035334 \nL 529.59794 178.143396 \nL 537.796287 181.251458 \nL 545.994635 184.35952 \nL 554.192982 187.467581 \nL 562.391329 190.575643 \nL 570.589676 193.683705 \nL 578.788023 196.791767 \nL 586.98637 199.899828 \nL 595.184717 203.00789 \nL 603.383064 206.115952 \nL 611.581411 209.224014 \nL 619.779759 212.332075 \nL 627.978106 215.440137 \nL 636.176453 218.548199 \nL 644.3748 221.656261 \nL 652.573147 224.764322 \nL 660.771494 227.872384 \nL 668.969841 230.980446 \nL 677.168188 234.088508 \nL 685.366535 237.196569 \nL 693.564882 240.304631 \nL 701.76323 243.412693 \nL 709.961577 246.520755 \nL 718.159924 249.628816 \nL 726.358271 252.736878 \nL 734.556618 255.84494 \nL 742.754965 258.953002 \nL 750.953312 262.061063 \nL 759.151659 265.169125 \nL 767.350006 268.277187 \nL 775.548354 271.385249 \nL 783.746701 274.49331 \nL 791.945048 277.601372 \nL 800.143395 280.709434 \nL 808.341742 283.817496 \nL 816.540089 286.925557 \nL 824.738436 290.033619 \nL 832.936783 293.141681 \nL 841.13513 296.249743 \nL 849.333478 299.357804 \nL 857.531825 302.465866 \nL 865.730172 305.573928 \nL 873.928519 308.68199 \nL 882.126866 311.790051 \nL 890.325213 314.898113 \n\" style=\"fill:none;stroke:#4c72b0;stroke-linecap:round;stroke-width:1.5;\"/>\n   </g>\n   <g id=\"patch_3\">\n    <path d=\"M 38.107031 442.08 \nL 38.107031 7.2 \n\" style=\"fill:none;stroke:#ffffff;stroke-linecap:square;stroke-linejoin:miter;stroke-width:1.25;\"/>\n   </g>\n   <g id=\"patch_4\">\n    <path d=\"M 930.907031 442.08 \nL 930.907031 7.2 \n\" style=\"fill:none;stroke:#ffffff;stroke-linecap:square;stroke-linejoin:miter;stroke-width:1.25;\"/>\n   </g>\n   <g id=\"patch_5\">\n    <path d=\"M 38.107031 442.08 \nL 930.907031 442.08 \n\" style=\"fill:none;stroke:#ffffff;stroke-linecap:square;stroke-linejoin:miter;stroke-width:1.25;\"/>\n   </g>\n   <g id=\"patch_6\">\n    <path d=\"M 38.107031 7.2 \nL 930.907031 7.2 \n\" style=\"fill:none;stroke:#ffffff;stroke-linecap:square;stroke-linejoin:miter;stroke-width:1.25;\"/>\n   </g>\n   <g id=\"legend_1\">\n    <g id=\"patch_7\">\n     <path d=\"M 680.172344 31.822812 \nL 923.207031 31.822812 \nQ 925.407031 31.822812 925.407031 29.622812 \nL 925.407031 14.9 \nQ 925.407031 12.7 923.207031 12.7 \nL 680.172344 12.7 \nQ 677.972344 12.7 677.972344 14.9 \nL 677.972344 29.622812 \nQ 677.972344 31.822812 680.172344 31.822812 \nz\n\" style=\"fill:#eaeaf2;opacity:0.8;stroke:#cccccc;stroke-linejoin:miter;\"/>\n    </g>\n    <g id=\"line2d_17\">\n     <path d=\"M 682.372344 21.257656 \nL 704.372344 21.257656 \n\" style=\"fill:none;stroke:#4c72b0;stroke-linecap:round;stroke-width:1.5;\"/>\n    </g>\n    <g id=\"line2d_18\"/>\n    <g id=\"text_17\">\n     <!-- Hospitalisation time for critical cases(days) -->\n     <g style=\"fill:#262626;\" transform=\"translate(713.172344 25.107656)scale(0.11 -0.11)\">\n      <use xlink:href=\"#ArialMT-72\"/>\n      <use x=\"72.216797\" xlink:href=\"#ArialMT-111\"/>\n      <use x=\"127.832031\" xlink:href=\"#ArialMT-115\"/>\n      <use x=\"177.832031\" xlink:href=\"#ArialMT-112\"/>\n      <use x=\"233.447266\" xlink:href=\"#ArialMT-105\"/>\n      <use x=\"255.664062\" xlink:href=\"#ArialMT-116\"/>\n      <use x=\"283.447266\" xlink:href=\"#ArialMT-97\"/>\n      <use x=\"339.0625\" xlink:href=\"#ArialMT-108\"/>\n      <use x=\"361.279297\" xlink:href=\"#ArialMT-105\"/>\n      <use x=\"383.496094\" xlink:href=\"#ArialMT-115\"/>\n      <use x=\"433.496094\" xlink:href=\"#ArialMT-97\"/>\n      <use x=\"489.111328\" xlink:href=\"#ArialMT-116\"/>\n      <use x=\"516.894531\" xlink:href=\"#ArialMT-105\"/>\n      <use x=\"539.111328\" xlink:href=\"#ArialMT-111\"/>\n      <use x=\"594.726562\" xlink:href=\"#ArialMT-110\"/>\n      <use x=\"650.341797\" xlink:href=\"#ArialMT-32\"/>\n      <use x=\"678.125\" xlink:href=\"#ArialMT-116\"/>\n      <use x=\"705.908203\" xlink:href=\"#ArialMT-105\"/>\n      <use x=\"728.125\" xlink:href=\"#ArialMT-109\"/>\n      <use x=\"811.425781\" xlink:href=\"#ArialMT-101\"/>\n      <use x=\"867.041016\" xlink:href=\"#ArialMT-32\"/>\n      <use x=\"894.824219\" xlink:href=\"#ArialMT-102\"/>\n      <use x=\"922.607422\" xlink:href=\"#ArialMT-111\"/>\n      <use x=\"978.222656\" xlink:href=\"#ArialMT-114\"/>\n      <use x=\"1011.523438\" xlink:href=\"#ArialMT-32\"/>\n      <use x=\"1039.306641\" xlink:href=\"#ArialMT-99\"/>\n      <use x=\"1089.306641\" xlink:href=\"#ArialMT-114\"/>\n      <use x=\"1122.607422\" xlink:href=\"#ArialMT-105\"/>\n      <use x=\"1144.824219\" xlink:href=\"#ArialMT-116\"/>\n      <use x=\"1172.607422\" xlink:href=\"#ArialMT-105\"/>\n      <use x=\"1194.824219\" xlink:href=\"#ArialMT-99\"/>\n      <use x=\"1244.824219\" xlink:href=\"#ArialMT-97\"/>\n      <use x=\"1300.439453\" xlink:href=\"#ArialMT-108\"/>\n      <use x=\"1322.65625\" xlink:href=\"#ArialMT-32\"/>\n      <use x=\"1350.439453\" xlink:href=\"#ArialMT-99\"/>\n      <use x=\"1400.439453\" xlink:href=\"#ArialMT-97\"/>\n      <use x=\"1456.054688\" xlink:href=\"#ArialMT-115\"/>\n      <use x=\"1506.054688\" xlink:href=\"#ArialMT-101\"/>\n      <use x=\"1561.669922\" xlink:href=\"#ArialMT-115\"/>\n      <use x=\"1611.669922\" xlink:href=\"#ArialMT-40\"/>\n      <use x=\"1644.970703\" xlink:href=\"#ArialMT-100\"/>\n      <use x=\"1700.585938\" xlink:href=\"#ArialMT-97\"/>\n      <use x=\"1756.201172\" xlink:href=\"#ArialMT-121\"/>\n      <use x=\"1806.201172\" xlink:href=\"#ArialMT-115\"/>\n      <use x=\"1856.201172\" xlink:href=\"#ArialMT-41\"/>\n     </g>\n    </g>\n   </g>\n  </g>\n </g>\n <defs>\n  <clipPath id=\"p0d7b42937e\">\n   <rect height=\"434.88\" width=\"892.8\" x=\"38.107031\" y=\"7.2\"/>\n  </clipPath>\n </defs>\n</svg>\n",
      "image/png": "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qEePHvrzn/8sq9WqV199VfPmzZOXl5caN26s5557TpGRkWrTpo3uuOMOfffddzp06JD+/Oc/KysrS59//rnmzJmjP/7xj/rkk09UXV2toKAgjRw5Uk888YS2bt2qH3/8UQEBAXrhhRfUvHnz2jqKi4uVk5OjlStXatOmTXr00Ud19OhRGYah6667TsOGDdOuXbv0+OOPa/fu3SovL1dMTIxefvllrVixQl9//bVyc3Pl6+urPXv2aO/evXr88cdVWFioJ598Uj/++KMsFotuu+02DRgwQEuWLNFLL72kuLg4FRYW6tixYxo3bpw6dux4wvH56ezmzTffrHfeeUfDhg3TK6+8okOHDunFF1+UzWbTli1b5OfnpzvvvFMffvihtmzZoqysLI0ZM0aS9PXXX2vChAmqqqqSr6+vRo0apQ4dOpywn/vvv1+lpaV69NFHdd999yk9PV1PPPGEduzYIcMwNGDAAI0YMULFxcUaNmyYEhMTtWPHDn344YeKjIysHWfu3LmaMGGCLBaLPD099fDDD6tz5846cOCAnnnmGW3YsEFVVVXKyMjQww8/rKlTp2rBggV66623JEmbNm3SLbfcom+++UZFRUV65pln9OOPP6q6ulrDhw/XddddpyVLluiZZ56Rv7+/Dh48qKlTp8rhcPzmZ5SkBQsW6OWXX1ZNTY38/f01btw4JScn66233tL8+fN15MgRHT58WKNGjVK/fv1O2wvS8TPQc+fOVU1NjWJiYjR27FhFRUWd9hic7LXXXqs9619VVaWnn35aeXl5CgsLU1hYmIKCgiRJP/zwg/7+97/r6NGjKi8vV/fu3fXss89qwoQJ2rhxo/7xj39Ikr7//ns9/fTTmjJlip566imtWLFCXl5eio2N1XPPPaeAgAB17txZY8eO1dq1a9W6deuz+JcKADiBAQC4pCUlJRnZ2dnGNddcU/u/Xr16GXfeeadhGIbx8MMPG0899ZRRU1NjVFZWGrfddpvx9ttvGzt37jTS09ONyspKwzAM49133zXmzZtXO+aECRMMwzCMtWvXGh07djR2795tTJ06tXbcV1991Rg3bpxhGIbx5ZdfGk899VRtTX/961+NJ5980jAMw7jpppuML7/80ti+fbvRvn17wzAM45FHHjHefvttwzAMo6yszLj//vuN6upq44MPPqh9vaamxhgxYoTx7rvv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lBTdeuut6tKli+bPn1/7vZ6uF+x2u6ZMmaKKigpJ0iuvvKKHH374V4/BzyUkJGj79u21yz169NC0adNUWVmpyspKzZo1S9LxQO90OvXggw8qKytLJSUl2rZtW23ITU9Pl4eHh959993au1YvWLBAt9xyizp06KB77rlHAwYMOOG4FRcXn3B9NgDg7HFGFQDquccee0xPP/20cnJyVFVVpR49eugPf/iDvL29deWVV2rw4MHy9/eXr6+vHnvssdrtVqxYocmTJ6umpkYvvfSSGjVqdMK43bp104MPPqinnnpKt912mx5//PHas1rt27c/5SNBfvLHP/5Rjz76qD799FN5enrq8ssvV+fOnXX33Xfr+eef1yuvvCIvLy+lp6dr27ZtkqSePXtq/PjxJ4zj5eWlN998U08//bRee+01VVdX6+6771a3bt20ZMmSMz5G/fv31/Dhw/Xaa6+d8TY/adGihZ588kn9+c9/lmEYslqtmjBhQu2Zt9N54YUX9OSTT+rzzz/X0aNHlZOTo0GDBmnHjh2n3cZqtWrMmDF68MEHZbVaZbFY9Oyzz8rb21uPPvqonnnmmdrvuXv37hoxYkTtttdff73efPNNXX755ZKOn7V988039cwzz+hf//qXjh07pvvuu08dO3b8xbE7088YHh6uF154QaNGjVJ1dbUCAwP10ksvKSQkRHPnztWVV16pmpoa9e7dW/v27VNFRcVpe6FTp04qLS3VkCFDZLFYZLPZNH78+F89Bj+XlJQkHx8fbdq0SYmJiRo6dKi2bdum7OxshYSEKD4+XpIUHBysO++8UwMHDpS/v7+ioqKUnp6urVu31k6FHzRokGbNmlU7zblnz5769ttvlZ2dLX9/fzVq1EhPPfVU7b5zc3NPOPsMADh7FuNs50EBAOq9Vq1aadGiRSdc9wpcambMmKHly5friSeeqPMYx44d05/+9Cddc801uuqqq37z/UuWLNGkSZN4PA0AnCOm/gIAgHopJydH+/btq71p0tnauHGjMjIy1LhxY/Xv3/83319dXa1//etfJ8xMAADUDWdUAQAAAACmwhlVAAAAAICpEFQBAAAAAKZCUAUAAAAAmApBFQAAAABgKgRVAAAAAICp/D82xIPdl80BtAAAAABJRU5ErkJggg==\n"
     },
     "metadata": {}
    }
   ],
   "source": [
    "import numpy as np\n",
    "import pandas as pd\n",
    "import seaborn as sns\n",
    "sns.set()\n",
    "\n",
    "# Data from early Chinese reports\n",
    "mean_discharge_time = 12.8\n",
    "severe_ratio_norm = severe_ratio / (severe_ratio + critical_ratio) \n",
    "critical_ratio_norm = critical_ratio / (severe_ratio + critical_ratio) \n",
    "\n",
    "def compute_icu_discharge_time(severe_discharge_time, mean_discharge_time: float = 12.8):\n",
    "    ''' Using mean discharge time from https://www.cnn.com/2020/03/20/health/covid-19-recovery-rates-intl/index.html '''\n",
    "    return (mean_discharge_time - severe_discharge_time * severe_ratio_norm) / critical_ratio_norm\n",
    "\n",
    "X = np.linspace(10, 15, 100)\n",
    "y = np.array([compute_icu_discharge_time(x) for x in X])\n",
    "\n",
    "X_name = 'Hospitalisation time for severe cases (days)'\n",
    "y_name = 'Hospitalisation time for critical cases(days)'\n",
    "df = pd.DataFrame([(x, y_) for x, y_ in zip(X, y)], columns=[X_name, y_name]).set_index(X_name)\n",
    "df.plot(figsize=(16, 8), grid=True, ylim=(0, max(y)));"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Because the data is reported daily, we can only pick an estimated whole number for both variables. The only possible value for *hospital discharge days* that would result in a median discharge time of 12 days is, unsurprisingly, 12. Then, the estimated *ICU discharge days* is 15 days."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "severe_recovery_days = 12\n",
    "critical_recovery_days = 15"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Recovery time for mild cases\n",
    "In order to estimate the current number of mild cases, there is one more number that we must guess: how many days it takes for recovery, on average, for all cases that are not severe or critical. Reported recovery times from a COVID-19 infection range from 2 weeks ([source](https://www.who.int/docs/default-source/coronaviruse/who-china-joint-mission-on-covid-19-final-report.pdf)) to \"a week to 10 days\" ([source](https://www.webmd.com/lung/news/20200324/the-other-side-of-covid-19-milder-cases-recovery#1)). After experimenting with several choices, using a median recovery time of 7 days appears to match empirical data from multiple official reports."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "mild_recovery_days = 7"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Estimating new cases breakdown\n",
    "Using Italy's data up to March 26, assuming the proportion of each category remains constant for every new case, daily breakdowns can be estimated by multiplying the number of new cases by the ratios of the respective categories:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "output_type": "execute_result",
     "data": {
      "text/plain": "            NewCases  NewDeaths  NewMild  NewSevere  NewCritical\nDate                                                            \n2020-03-23    5560.0      651.0   4448.0     834.00       278.00\n2020-03-24    4789.0      601.0   3831.2     718.35       239.45\n2020-03-25    5249.0      743.0   4199.2     787.35       262.45\n2020-03-26    5210.0      683.0   4168.0     781.50       260.50\n2020-03-27    6153.0      662.0   4922.4     922.95       307.65",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th>NewCases</th>\n      <th>NewDeaths</th>\n      <th>NewMild</th>\n      <th>NewSevere</th>\n      <th>NewCritical</th>\n    </tr>\n    <tr>\n      <th>Date</th>\n      <th></th>\n      <th></th>\n      <th></th>\n      <th></th>\n      <th></th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>2020-03-23</th>\n      <td>5560.0</td>\n      <td>651.0</td>\n      <td>4448.0</td>\n      <td>834.00</td>\n      <td>278.00</td>\n    </tr>\n    <tr>\n      <th>2020-03-24</th>\n      <td>4789.0</td>\n      <td>601.0</td>\n      <td>3831.2</td>\n      <td>718.35</td>\n      <td>239.45</td>\n    </tr>\n    <tr>\n      <th>2020-03-25</th>\n      <td>5249.0</td>\n      <td>743.0</td>\n      <td>4199.2</td>\n      <td>787.35</td>\n      <td>262.45</td>\n    </tr>\n    <tr>\n      <th>2020-03-26</th>\n      <td>5210.0</td>\n      <td>683.0</td>\n      <td>4168.0</td>\n      <td>781.50</td>\n      <td>260.50</td>\n    </tr>\n    <tr>\n      <th>2020-03-27</th>\n      <td>6153.0</td>\n      <td>662.0</td>\n      <td>4922.4</td>\n      <td>922.95</td>\n      <td>307.65</td>\n    </tr>\n  </tbody>\n</table>\n</div>"
     },
     "metadata": {},
     "execution_count": 5
    }
   ],
   "source": [
    "import pandas as pd\n",
    "\n",
    "# Load data for Italy\n",
    "data = pd.read_csv('https://open-covid-19.github.io/data/data.csv')\n",
    "data = data[(data['CountryCode'] == 'IT') & (data['RegionCode'].isna())]\n",
    "\n",
    "# Estimate daily counts per category assuming ratio is constant\n",
    "data = data.set_index('Date')\n",
    "data = data[data.index <= '2020-03-27']\n",
    "data['NewCases'] = data['Confirmed'].diff()\n",
    "data['NewDeaths'] = data['Deaths'].diff()\n",
    "data['NewMild'] = data['NewCases'] * mild_ratio\n",
    "data['NewSevere'] = data['NewCases'] * severe_ratio\n",
    "data['NewCritical'] = data['NewCases'] * critical_ratio\n",
    "data = data[['NewCases', 'NewDeaths', 'NewMild', 'NewSevere', 'NewCritical']]\n",
    "\n",
    "data.tail()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Estimating current cases breakdown\n",
    "Now that we have an estimate for the category breakdown of new cases as well as for the discharge time per category, we can estimate the number of current cases per category by adding up each category over a rolling window:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "output_type": "execute_result",
     "data": {
      "text/plain": "            NewCases  NewDeaths  NewMild  NewSevere  NewCritical  \\\nDate                                                               \n2020-03-23    5560.0      651.0   4448.0     834.00       278.00   \n2020-03-24    4789.0      601.0   3831.2     718.35       239.45   \n2020-03-25    5249.0      743.0   4199.2     787.35       262.45   \n2020-03-26    5210.0      683.0   4168.0     781.50       260.50   \n2020-03-27    6153.0      662.0   4922.4     922.95       307.65   \n\n            CurrentlyMild  CurrentlySevere  CurrentlyCritical  \nDate                                                           \n2020-03-23        27512.8          7348.35            2662.75  \n2020-03-24        28757.6          7719.75            2827.60  \n2020-03-25        30136.0          8109.45            3000.20  \n2020-03-26        30938.4          8508.90            3211.85  \n2020-03-27        31603.2          8907.30            3403.85  ",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th>NewCases</th>\n      <th>NewDeaths</th>\n      <th>NewMild</th>\n      <th>NewSevere</th>\n      <th>NewCritical</th>\n      <th>CurrentlyMild</th>\n      <th>CurrentlySevere</th>\n      <th>CurrentlyCritical</th>\n    </tr>\n    <tr>\n      <th>Date</th>\n      <th></th>\n      <th></th>\n      <th></th>\n      <th></th>\n      <th></th>\n      <th></th>\n      <th></th>\n      <th></th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>2020-03-23</th>\n      <td>5560.0</td>\n      <td>651.0</td>\n      <td>4448.0</td>\n      <td>834.00</td>\n      <td>278.00</td>\n      <td>27512.8</td>\n      <td>7348.35</td>\n      <td>2662.75</td>\n    </tr>\n    <tr>\n      <th>2020-03-24</th>\n      <td>4789.0</td>\n      <td>601.0</td>\n      <td>3831.2</td>\n      <td>718.35</td>\n      <td>239.45</td>\n      <td>28757.6</td>\n      <td>7719.75</td>\n      <td>2827.60</td>\n    </tr>\n    <tr>\n      <th>2020-03-25</th>\n      <td>5249.0</td>\n      <td>743.0</td>\n      <td>4199.2</td>\n      <td>787.35</td>\n      <td>262.45</td>\n      <td>30136.0</td>\n      <td>8109.45</td>\n      <td>3000.20</td>\n    </tr>\n    <tr>\n      <th>2020-03-26</th>\n      <td>5210.0</td>\n      <td>683.0</td>\n      <td>4168.0</td>\n      <td>781.50</td>\n      <td>260.50</td>\n      <td>30938.4</td>\n      <td>8508.90</td>\n      <td>3211.85</td>\n    </tr>\n    <tr>\n      <th>2020-03-27</th>\n      <td>6153.0</td>\n      <td>662.0</td>\n      <td>4922.4</td>\n      <td>922.95</td>\n      <td>307.65</td>\n      <td>31603.2</td>\n      <td>8907.30</td>\n      <td>3403.85</td>\n    </tr>\n  </tbody>\n</table>\n</div>"
     },
     "metadata": {},
     "execution_count": 6
    }
   ],
   "source": [
    "data['CurrentlyMild'] = data['NewMild'].rolling(round(mild_recovery_days)).sum()\n",
    "data['CurrentlySevere'] = data['NewSevere'].rolling(round(severe_recovery_days)).sum()\n",
    "data['CurrentlyCritical'] = data['NewCritical'].rolling(round(critical_recovery_days)).sum()\n",
    "data.tail()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Comparing with Italy's home care, hospitalisations and ICU counts\n",
    "Italy categorises the cases into home care, hospitalisations and ICU admission, which appear to map well into *mild*, *severe* and *critical* categories. From Italy's ministry of health, this is the breakdown [as of March 26](https://web.archive.org/web/20200325181518/http://www.salute.gov.it/portale/nuovocoronavirus/dettaglioContenutiNuovoCoronavirus.jsp?lingua=italiano&id=5351&area=nuovoCoronavirus&menu=vuoto) of cases compared to our model estimates:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "output_type": "execute_result",
     "data": {
      "text/plain": "                   Estimated  Reported Difference\nCategory                                         \nCurrentlyMild      31603.20%     30920      2.21%\nCurrentlySevere     8907.30%     23112    -61.46%\nCurrentlyCritical   3403.85%      3489     -2.44%",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th>Estimated</th>\n      <th>Reported</th>\n      <th>Difference</th>\n    </tr>\n    <tr>\n      <th>Category</th>\n      <th></th>\n      <th></th>\n      <th></th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>CurrentlyMild</th>\n      <td>31603.20%</td>\n      <td>30920</td>\n      <td>2.21%</td>\n    </tr>\n    <tr>\n      <th>CurrentlySevere</th>\n      <td>8907.30%</td>\n      <td>23112</td>\n      <td>-61.46%</td>\n    </tr>\n    <tr>\n      <th>CurrentlyCritical</th>\n      <td>3403.85%</td>\n      <td>3489</td>\n      <td>-2.44%</td>\n    </tr>\n  </tbody>\n</table>\n</div>"
     },
     "metadata": {},
     "execution_count": 7
    }
   ],
   "source": [
    "estimated = data.iloc[-1]\n",
    "reported = pd.DataFrame.from_records([\n",
    "    {'Category': 'CurrentlyMild', 'Count': 30920},\n",
    "    {'Category': 'CurrentlySevere', 'Count': 23112},\n",
    "    {'Category': 'CurrentlyCritical', 'Count': 3489},\n",
    "]).set_index('Category')\n",
    "\n",
    "pd.DataFrame.from_records([\n",
    "    {\n",
    "        'Category': col, \n",
    "        'Estimated': '{0:.02f}%'.format(estimated[col]),\n",
    "        'Reported': reported.loc[col, 'Count'],\n",
    "        'Difference': '{0:.02f}%'.format(100.0 * (estimated[col]  - reported.loc[col, 'Count']) / reported.loc[col, 'Count']),\n",
    "    }\n",
    "    for col in reported.index.tolist()\n",
    "]).set_index('Category')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "While the severe category does not match what was estimated by the model, both mild cases and critical cases were very accurate predictors for home care and ICU patients, respectively."
   ]
  }
 ],
 "metadata": {
  "file_extension": ".py",
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.6-final"
  },
  "mimetype": "text/x-python",
  "name": "python",
  "npconvert_exporter": "python",
  "pygments_lexer": "ipython3",
  "version": 3
 },
 "nbformat": 4,
 "nbformat_minor": 4
}